package thread;
/**
 * 第二种创建线程的方式：
 * 实现Runable接口单独定义线程任务
 */
public class ThreadDemo2 {
    public static void main(String[] args) {
        //创建线程任务
        Runnable r1 =new MyRunnable1();
        // new MyRunnable1() 做了什么？
        //创建了一个 MyRunnable1 类的对象实例。
        //这个对象是一个 线程任务对象，它封装了线程要执行的任务逻辑（也就是 run() 方法中的代码）。
        //4. Runnable r1 = new MyRunnable1(); 的含义？
        //将 MyRunnable1 实例向上转型为 Runnable 类型。
        //此时 r1 变量可以作为参数传递给 Thread 构造器，用于指定线程的任务。
        Runnable r2 =new MyRunnable2();
        //创建线程
        Thread t1 =new Thread(r1);
        Thread t2 =new Thread(r2);
        //启动线程
        t1.start();
        t2.start();
    }
}
//线程任务
class MyRunnable1 implements Runnable{
    @Override
    public void run() {
        for (int i = 0; i <1000 ; i++) {
            System.out.println("你是谁");
        }
    }
}
class MyRunnable2 implements Runnable{
    @Override
    public void run() {
        for (int i = 0; i <1000 ; i++) {
            System.out.println("是你爹");
        }
    }
}
